﻿using S.Common.Enums.PregnancyTest;
using System.ComponentModel.DataAnnotations;

namespace S.PregnancyTest.API.Dto
{
    /// <summary>
    /// 添加种母妊检Dto
    /// </summary>
    public class AddPregnancyTestDto
    {
        /// <summary>
        /// 主键Id
        /// </summary>
        [Key]
        public int PregnancytestId { get; set; }

        /// <summary>
        /// 负责人Id(用户表主键)
        /// </summary>
        public int UserId { get; set; }

        /// <summary>
        /// 羊只状态
        /// </summary>
        public bool SheepStatus { get; set; }

        /// <summary>
        /// 可视耳标名称
        /// </summary>
        [MaxLength(50)]
        public string? EarTag { get; set; }

        /// <summary>
        /// 妊检日期
        /// </summary>
        public DateTime PregnancyDate { get; set; }

        /// <summary>
        /// 妊检结果(使用枚举)
        /// </summary>
        public PregnancytestResultEnum PregnancytestResult { get; set; }

        /// <summary>
        /// 妊检方式(使用枚举)
        /// </summary>
        public PregnancyTestTypeEnum PregnancytestMethod { get; set; }

        /// <summary>
        /// 同胎数(使用枚举)
        /// </summary>
        public ParityNumberEnum? ParityNumber { get; set; }

        /// <summary>
        /// 妊检天数
        /// </summary>
        public int? PregnancytestDays { get; set; }

        /// <summary>
        /// 当前栋舍
        /// </summary>
        [MaxLength(50)]
        public string? TurnOutBuild { get; set; }

        /// <summary>
        /// 当前栏位
        /// </summary>
        [MaxLength(50)]
        public string? TurnOutHuts { get; set; }

        /// <summary>
        /// 转入栋舍
        /// </summary>
        [MaxLength(50)]
        public string? ShiftToBuild { get; set; }

        /// <summary>
        /// 转入栏位
        /// </summary>
        [MaxLength(50)]
        public string? ShiftToHuts { get; set; }

        /// <summary>
        /// 创建人
        /// </summary>
        [MaxLength(50)]
        public string? CreateBy { get; set; }

        /// <summary>
        /// 单据号
        /// </summary>
        [MaxLength(50)]
        public string? DocumentNumber { get; set; }

        /// <summary>
        /// 流水号
        /// </summary>
        [MaxLength(50)]
        public string? SerialNumber { get; set; }


    }
}
